Release 10.1A: OpenEdge Development:
Web Services
AppServer for running business logic
The business end of a Web service created with OpenEdge is the set of Progress 4GL procedures running on an AppServer that execute Web service requests. With OpenEdge, you can develop new AppServer applications for use as Web services, or you can define new Web services based on existing AppServer applications. When you Web service-enable an existing AppServer application, you do not have to make any code changes in order to make them accessible as Web services.
The AppServer supports four operating modes for Web service applications:
- The stateless, state-aware, and state-reset operating modes (supported for all OpenEdge clients). As with other OpenEdge clients, these operating modes maintain a private and persistent connection for each client of the Web service. So, the AppServer accepts all requests from each client over this private connection.
- The state-free operating mode (not supported for Java and .NET Open Clients). With this operating mode, the AppServer accepts requests from any and all Web service clients without the use of connections.
These operating modes thus support two distinct session models for Web services:
The session-managed model provides varying types of support for maintaining and managing session context across client requests, throughout the life of the client connection. With this model, the type of context management supported depends on the actual operating mode of the AppServer, and the AppServer application must be written to maintain session context accordingly. With this model, the AppServer handles all requests from a single client sequentially, completing each request before accepting another, which allows an orderly maintenance of context from one request to the next.
The session-free model supports a completely connectionless and context-free interaction between the client and Web service application. This session-free model is far more scalable than the session-managed model because the AppServer accepts client requests from all clients as fast as it can execute them, and in no special order. The AppServer also runs as many requests at a time in parallel as the number of Application Server processes it has available to handle them. Thus, no AppServer resource (memory or process) is reserved for indefinite use by a single client, as is the case with the session-managed model. With this model, the AppServer application must be written to be context free, and all mechanisms otherwise available for context management on the AppServer are not supported.
For more information on setting up and programming the AppServer for Web services using both session models, see OpenEdge Application Server: Developing AppServer Applications
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |